Video processing applications using video encoders often require frames to be skipped in order to maintain a constant bit rate. Some of the video processing applications use the technique of frame skipping in the encoder to maintain the constant bit rate. The technique of using skip frames often avoids the use of processor bandwidth during time of heavy bandwidth requirements (for example), which helps to reduce peak computing requirements and thus stay within the bounds of the total processing budget allotted for the video application.
The Institute of Electrical and Electronic Engineers (IEEE) H.264 standard is one of the most popular video compression standards, which is used in video recording/encoding applications. Conventional approaches in an H.264-compliant encoder to skip frames include skipping an entire frame and associated bit-stream and then convey this information through RTP (Real-time Transfer Protocol) time stamps or picture timing SEI (System Enhanced Information) messages. Likewise the encoder is required to inform the system of each such frame skip. When using conventional approaches, it is typically difficult to synchronize timing information between the encoder and the embodying system when frames are skipped. Further, decoders that receive a video stream from the encoder are not always able to read the picture timing SEI messages that inform the decoder of the frame skip. Thus, system implementation requirements are increased for integrating frame skips, whereas processing (and bandwidth) requirements are increased when each individual frame is encoded. Thus, it is often difficult to balance the two approaches of using frame skipping (to save generating bits and improve performance) and coding all frames (to simplify implementation requirements).